#include<cassert>
#include "interno.h"


Interno::Interno()
{
    trans=0;
    identificador=0;
}
IdInterno Interno::ID(void)
{
   return identificador;
}

int Interno::transmision()
{
    return trans;
}

Interno::Interno(int c, IdInterno i)
{
    assert(i==1 || i==0);
    trans=c;
    identificador=i;
}

Interno::Interno(const Interno &i)
{
    trans=i.trans;
    identificador=i.identificador;
}

bool Interno::operator==(const Interno &m)
{
    bool b;
    b= m.trans==trans && m.identificador==identificador;
    return b ;
}

bool Interno::operator!=(const Interno &m)
{
    bool b;
    b= m.trans!=trans || m.identificador!=identificador;
    return b ;
}


bool Interno::operator<(const Interno &m)
{
    bool b;
    b= m.identificador < identificador;
    return b ;
}

bool Interno::operator>(const Interno &m)
{
    bool b;
    b= m.identificador > identificador;
    return b ;
}


void Interno::operator=(const Interno &i)
{
    trans=i.trans;
    identificador=i.identificador;
}

//****************************************************************************//

ostream & operator <<(ostream &out, const Interno &m)
    {
    out << " < ";
    
    out << m.identificador;
    
    if(m.trans == 0){
         out << " Automatico ";
    }
    else{
         out << " Manual ";
    }
    
    out << " > " << endl;
    return (out);
    }
